package comandos;

import client.ClienteSession;

public class MensajeChat implements ComandoCliente
{
	private static String mensajeRecibido;
	private static Integer conversacionId;
	private static final Object lock = new Object();
	
	public void ejecutar (ClienteSession cliente, boolean invocadoPorServidor)
	{
		if (invocadoPorServidor){
			try	{
				synchronized (lock) {
					mensajeRecibido = (String)cliente.getInput().readObject();
					conversacionId =  (Integer)cliente.getInput().readObject();
					lock.notify();
				}				
			}catch (Exception e){
				System.out.println("Error recibiendo el mensaje de chat: " + e.getMessage());
			}					
		}	
	}

	public static String getMensajeRecibido() throws InterruptedException {
		synchronized (lock) {			
			lock.wait();
			return conversacionId + "|" + mensajeRecibido;
		}		
	}

	public static void setMensajeRecibido(String mensajeRecibido) {
		MensajeChat.mensajeRecibido = mensajeRecibido;
	}
	
}
